Most conventional means of synchronizing data between computing devices depend upon a constant, stable, network connection and often cannot reliably operate across a firewall. As portrayed in Prior Art FIG. 17 the network connection implemented in accordance with a conventional data file transfer method is maintained for the entire duration of all of the transfers (from step 1700 to step 1750), resulting in low network utilization (wasting network resources) because the time expended during human intervention in the selection of files to send from (step 1710) and receive into (step 1730) each directory is relatively large such that the actual computing device time performing the transfers (steps 1720 and 1740) is a fraction of the total time connected to the network. Such low network utilization in the context of the need to meet increasing data transfer loads in turn results in building or configuring more network resources (in the form of sockets and ports) than is strictly necessary. Disadvantageously, conventional file transfer means: cannot determine the set of files to change, send files uncompressed, and leave residual information respecting the user at the end of a session. Further, those means of file transfer that can cross firewalls require modifications to the host or client computer system to permit operation, which as a result often suffer a significant reduction in performance.
Each known file system comprises a set of identifiable rules and a method for organizing both files within a directory structure and the units of data associated with a file, which units are commonly known as bits or file segments. A file comprises a set of such bits whether or not contiguously located within a storage medium. The “path” to a file is a common and well-understood means for locating the subject file that is identifiable within the context of the subject file system. On a standalone computing device, the “path” is typically the chain or string of logical directories, associated with physical sectors of the storage medium on which the subject data is recorded, which path identifies the location of a file of related data. The operating system of the subject computing device typically associates said physical sectors with logical blocks comprised of bits that make up files and file segments. The “name” of a file identifies the specific set of bits that comprise that file. When the bits of a file are not stored contiguously, each file segment of bits normally includes bits representing characters that identify the name of the file to which those bits belong, making it possible to gather and reassemble the bits into a file for processing, transfer, or other purposes. Relative to the directory structure in which the subject files are located mirroring storage methods disadvantageously for online, but particularly so for wireless operations redundantly capture all of the bits on all paths, even where a majority of the files have not been altered since they were first written. On a network (including the InterNet) computing device, the “path” is typically longer and more complex, potentially involving: domains, groups, a user, a session, an IP address, remote networks, routers, bridges, firewalls, servers, peripheral devices, drives, directories or folders, a file name or ID, file handles, various file information (including properties, access rights, and contents), various formats, and other organizational detail. To simplify the task of individual or collaborating End Users the technique of “mapping” drives and devices places files within a more familiar and memorable context submerging the complexity of the true path.
Known conventional file transfer methods and systems are based on a manual approach (e.g. FTP or e-mail) according to which the user must determine which files need to be transferred in which directions. Some file transfer systems are proprietary and work only with particular hardware combinations and unknown levels of transport security. Such systems often have significant problems with data security and integrity, as well as suffering from poor network utilization. Disadvantageously, none of such proprietary systems are easily operable by an untrained user without changing system settings on the client machine. And, none of said systems are sufficiently robust to encourage users to store business-critical information on the server at the same time as being flexible enough to grant access from unprepared client machines such as are found in “Internet Cafés”.
Known data synchronizing technology includes some methods that compare files at the level of individual records or the level of individual bits. Such methods tend to be lengthy and processor intensive or unintelligent and unable to distinguish altered files from unaltered files. Disadvantageously, some such methods also require modifications to the operating system of the client machine and a constant network connection in order to execute.
Remote data storage and recovery systems include a selection of commercially available products such as “X-Drive”, which client component plugs into the Windows Explorer application as a separate drive icon, and is also available via a web browser client. Once this product is installed, the new virtual “drive” may be mapped and treated like other network drives. Disadvantageously, the user is responsible for manually moving files between the X-Drive and other drive locations, either local or remote, and takes full responsibility for determining what action to take should a file of the same “name” already exist in either of the source or destination folders. Known variants on the X-Drive model include IDrive and IBackup.
Palm Pilot's “HotSync” system comprises software (client or Handheld and host or Desktop), a cable (USB or traditional serial with multi-pin adaptors), and a cradle that are used for the synchronization of data between a Palm Pilot PDA and a host (typically a Desktop) computer. Hotsynch requires a dedicated physical connection and uses no encryption or compression during data transfer. Disadvantageously, Hotsynch does not contemplate multiple computers accessing the server simultaneously, nor the use of any network connection that implements a TCP/IP stack. Further, Hotsynch operates on individual records not on wide industry standard tree structures, directories, and files.
Pumatech's lntellisync product describes a mechanism to synchronize records from a database between two instances of a database, and Pumatech's U.S. Pat. Nos. (6,304,881, 6,330,568, 6,405,218) and application 2002/0059256-A1 are all concerned with various aspects of the synchronization of data in record form between two databases. Even ExtendedSystems product that addresses PDA synchronization beyond the functionality provided in HotSync, disadvantageously provides no means for exploring or interpreting the contents of files.
PC DOCS products allow multiple individuals to manually coordinate changes to a set of shared files using document version numbers over a dedicated network connection without compression or security making it unsuited to use on public networks.
iPod from Apple Computer can store and play MP3 sound files. iPod uses a file model for the sounds, and performs a synchronization operation between a host computer and the MP3 device, using a FireWire (IEEE 1394) interface. Disadvantageously, iPod requires a dedicated physical connection and does not contemplate multiple computers to access the server simultaneously. Further, iPod does not use encryption and compression during data transfer making it unsuited to use on public networks for the transfer of business data.
Disadvantageously, traditional FTP clients use a complex protocol (communicating via a special port) that commonly cannot traverse firewalls and that neither compresses nor encrypts data. As a consequence, traditional FTP clients expose the name and password of the user to any individual monitoring the network over which the FTP client is operating—in addition to exposing the file names, paths, and the contents of the files being transferred. Specialized variations of traditional FTP clients do exist that provide encryption, but they often require changes to the FTP server system to accommodate them, and may or may not be able to traverse firewalls.
Other known products are oriented to a private “enterprise” network environment (e.g. VPN) rather than public networks and disadvantageously do not provide secure, bi-directional, remote, and bandwidth efficient file synchronization across the InterNet.
RepliWeb, for example, specializes in peer-to-peer, many-to-one, and one-to-many file replication for production environments with large numbers of files or quantities of data. Repliweb, is used for large-scale server replication and disadvantageously does not permit remote access to data for processing. Although RepliWeb's file replication is a good (critical content high-availability and business continuity) solution for remote site data mirroring, web publishing, content loading, cascaded file distribution, and consolidation, disadvantageously, Repliweb requires that the target device be available through a previously established secure network connection, typically using an expensive VPN, further requiring knowledge of the target device(s), further consuming network services.
PowerSync from Linkpro is a real-time file replication product, for Windows NT and 2000 servers, which requires that the target device be visible as a mapped drive within the file system view, via a previously established secure network connection being either a LAN or WAN. PowerSync has no actual client-server communication protocol per se, instead the synchronization is simply done by specifying the source and target directories or folders on a target device that must be a mapped network drive visible to Windows explorer. Disadvantageously, to work remotely PowerSync requires that some form of secure VPN already be in place, which is not easy for a non-expert user to do on a unprepared client workstation such as an end user may access at an Internet Café or an airport terminal. PowerSync's security depends on network security so it appears that the data is compressed but not encrypted in any way. Although PowerSync can be configured to transfer only files that have changed, complete file transfers are made and use common network file transfer methods.
Idem from Soft Experience is similar to Peer Software's PeerSync product, being used exclusively for mirroring a specified data set to a target device, but not remotely unless the target device is a network drive previously mapped through some other mechanism and apparently oriented towards Apple's Macintosh file systems.
SureSync from Software Pursuits can replicate files to one or more servers, or to laptop and desktop computers, using LAN, WAN, VPN, TCIP/IP, or FTP connections, but lacks any secure client-server software interprocess communication.
ViceVersa from TGRMN software is a Windows utility that compares, mirrors, synchronizes and backs up data, however, ViceVersa is a LAN/WAN based product deploying a number of file comparison methods, and without a system for secure communication between software processes during synchronization.
The problem with conventional data transfer and synchronization products (whether for files or for bits) is that they are device specific, require significant configuration and typically do not or cannot: compress; automatically identify the set of changed files or bits; provide secure, remote, bidirectional, file synchronization across the Internet; while using an unprepared client workstation without the intervention of a technical operator.